//
// Source code recreated from a .class file by IntelliJ IDEA
// (powered by Fernflower decompiler)
//

package com.restaurant.application.configintegral.support;

import com.google.common.collect.Lists;
import com.nebutown.generation.Convert;
import com.nebutown.generation.PickableBean;
import java.util.List;

public class ConfigIntegralData implements PickableBean {
    public static final String FN_DETAIL = "detail";
    public static final List<String> FIELD_NAMES = Lists.newArrayList(new String[]{"detail"});
    private String detail;

    public ConfigIntegralData(String detail) {
        this.setDetail(detail);
    }

    public ConfigIntegralData() {
    }

    public ConfigIntegralData duplicate() {
        ConfigIntegralData result = new ConfigIntegralData();
        result.detail = this.detail;
        return result;
    }

    public String toString() {
        return Convert.toJson(this);
    }

    public String getDetail() {
        return this.detail;
    }

    public void setDetail(String value) {
        this.detail = value;
    }

    public ConfigIntegralData withDetail(String value) {
        this.setDetail(value);
        return this;
    }

    public ConfigIntegralData withDetail(String value, String defaultValue) {
        this.setDetail(value == null ? defaultValue : value);
        return this;
    }

    public Object getValueOf(String name) {
        byte var3 = -1;
        switch(name.hashCode()) {
            case -1335224239:
                if (name.equals("detail")) {
                    var3 = 0;
                }
            default:
                switch(var3) {
                    case 0:
                        return this.getDetail();
                    default:
                        return null;
                }
        }
    }

    public void setValueOf(String name, Object value) {
        byte var4 = -1;
        switch(name.hashCode()) {
            case -1335224239:
                if (name.equals("detail")) {
                    var4 = 0;
                }
            default:
                switch(var4) {
                    case 0:
                        this.setDetail((String)value);
                        return;
                    default:
                }
        }
    }

    public boolean hasField(String name) {
        return FIELD_NAMES.contains(name);
    }

    public int hashCode() {
        return this.signature().hashCode();
    }

    public boolean equals(Object o) {
        return !(o instanceof ConfigIntegralData) ? false : this.signature().equals(((ConfigIntegralData)o).signature());
    }

    public String signature() {
        throw new RuntimeException("Bean ConfigIntegralData has no signature defined, no hash code or equals possible.");
    }
}
